The present invention relates to computer software and, more particularly, to updating computer software. A major objective of the invention is to provide for more customized update prioritization to aid a user in selecting program updates for installation.
As computers have become pervasive in our society, computer software manufacturers compete aggressively for market share. For many, the objective is to get more features to the marketplace ahead of competitors. Of course, competition does not cease with the sale of a software product, as a competitor may subsequently introduce a competitive product with even more features. Newer versions with greater features sets are constantly being developed. To maintain customer loyalty between major version introductions, many computer manufacturers provide free or reduced-cost upgrades so that a purchaser can benefit from ongoing product development. For example, at least some upgrades can be made available on a vendor's website for downloading to a user's computer system.
When a software program license is first purchased, the software is often accompanied by user documentation, e.g., a user manual, which can be hardcopy and/or electronic, e.g., in Adobe portable document format (pdf). When the user receives a major upgrade, it is not atypical for it to be accompanied by new documentation that replaces the original documentation. However, it is less common for documentation to be replaced when a minor revision is implemented. Instead, minor revisions tend to be accompanied by release notes that describe the new features and any other changes implemented by the upgrade.
One of the reasons that it can be impracticable to replace documentation with every upgrade is that users may not implement all available upgrades. For example, if an available upgrade only provides features of no interest to a particular user, that user may skip that upgrade. If users are permitted to skip some upgrades while implementing others, there can be a wide variety of features sets that are implemented by different users. In such a case, it can be difficult to provide complete and integrated documentation for each possible combination of implemented upgrades.
To the extent that upgrades are accompanied by release notes instead of replacement documentation, a user may be required to refer to a user manual and all pertinent release notes to learn how to use a feature or to solve an encountered problem. This can be problematic even with one set of release notes in addition to the original documentation, and unwieldy if there are several pertinent sets of release notes. What is needed is a more effective way of documentation for upgrades.